OneDrive 和 SharePoint 中的已缩短共享链接格式 |
您所在的位置:网站首页 › one drive链接怎么用 › OneDrive 和 SharePoint 中的已缩短共享链接格式 |
OneDrive 和 SharePoint 中的已缩短共享链接格式
项目
06/29/2022
OneDrive 和 SharePoint 中的共享文件和文件夹链接现已缩短,并采用了新格式。 例如,下面展示了对组织内所有人都有效的 OneDrive 链接的新旧格式。 旧链接格式 新链接格式 https://contoso-my.sharepoint.com/personal/john_contoso_com/_layouts/15/guestaccess.aspx?share=ERGZUIZ8E0pAuC1oJtwz4dQB23IabPgbMtiVe0OLPtMybw https://contoso-my.sharepoint.com/:w:/p/john_contoso_com/ERGZUIZ8E0pAuC1oJtwz4dQB23IabPgbMtiVe0OLPtMybw备注 在引入此更改前共享的链接不受此更改影响,将继续有效。 新链接格式可能会影响遵循或依赖 OneDrive 或 SharePoint URL 结构的应用程序或服务,尤其是当这些应用程序或服务分析网站 URL 或特定字符串时。 新的短链接与所有搭配 guestaccess.aspx 链接使用的 API 都兼容。 下面介绍了此更改影响的一些方案: 应用程序分析最终用户输入的 URL 来获取网站 URL,以生成 SharePoint REST API 请求(如 GetFileByUrl 或 GetSharingLinkData)。 应用程序需要使用最终用户输入的 URL,并使用 CSOM 尝试查询文件信息。 应用程序分析最终用户输入的 URL,以确定它是匿名链接,还是仅供内部使用的共享链接。 使用 Microsoft Graph 与 SharePoint 链接进行交互的应用程序将继续有效。 有关详细信息,请参阅访问共享的 DriveItem。 SharePoint REST APISharePoint REST API 不支持与用户输入链接进行交互。 建议尽量迁移到 Microsoft Graph 共享 API。 如果无法迁移到 Microsoft Graph,可以采用下列解决办法。 请注意,此解决办法不受支持。 确定基 URL。 这现在是链接的主机名。 通过连接基 URL、SP.RemoteWeb 和特定 API 方法,构造 API 请求(如下所示)。 {hostname}/_api/SP.RemoteWeb(@a)/web/{specific_api_here}?@a='{url_encoded_link}' 例如,对于以下输入 URL: https://contoso-my.sharepoint.com/personal/john_contoso_com/_layouts/15/guestaccess.aspx?share=ERGZUIZ8E0pAuC1oJtwz4dQB23IabPgbMtiVe0OLPtMybw 旧 API 请求如下: https://contoso-my.sharepoint.com/personal/john_contoso_com/_api/web/GetFileByUrl(@url)?@url='https%3A%2F%2Fcontoso-my.sharepoint.com%2Fpersonal%2Fjohn_contoso_com%2F_layouts%2F15%2Fguestaccess.aspx%3Fshare%3DERGZUIZ8E0pAuC1oJtwz4dQB23IabPgbMtiVe0OLPtMybw 新 API 请求如下: https://contoso-my.sharepoint.com/_api/SP.RemoteWeb(@url)/web/GetFileByUrl(@url)?@url='https%3A%2F%2Fcontoso-my.sharepoint.com%2Fpersonal%2Fjohn_contoso_com%2F_layouts%2F15%2Fguestaccess.aspx%3Fshare%3DERGZUIZ8E0pAuC1oJtwz4dQB23IabPgbMtiVe0OLPtMybw 若要确定链接的特定类型,请检查 GetSHaringLinkData API(将示例中的 GetFileByUrl 替换为 GetSharingLinkData)响应中的 IsSharingLink 和 IsAnonymous 字段。 请使用此方法,而不是分析 URL 以获取 guestaccess.aspx 等令牌。 SharePoint CSOMCSOM 不支持与用户输入链接进行交互。 一些应用程序打开 ClientContext,并查询文件元数据,具体是通过从 SharePoint 链接中连续截断路径段,直到 ClientContext 构造函数成功。 这种方法不再适用于新 URL 格式。 若要解决此问题,请执行以下操作: 在根网站 (scheme://hostname) 上打开“ClientContext”。 调用 Web.WebUrlFromPageUrlDirect() 以获取链接的 Web URL。 使用此 Web URL 打开新“ClientContext”,以便发出其他请求。 备注 这种方法不受支持。 |
今日新闻 |
推荐新闻 |
CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3 |